//package top.glike.ssl.auto.utils;
//
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.boot.CommandLineRunner;
//import org.springframework.stereotype.Service;
//import top.glike.ssl.auto.config.SshServerConfig;
//import top.glike.ssl.auto.service.impl.CertificateDeploymentService;
//import top.glike.ssl.auto.service.impl.SshService;
//
///**
// * packageName top.glike.ssl.auto.utils
// *
// * @author Sophia
// * @className SshTest
// * @description TODO
// * @date 2025/10/13
// */
//@Slf4j
//@Service
//public class SshTest implements CommandLineRunner {
//
//    @Autowired
//    private SshService sshService;
//
//    @Autowired
//    private CertificateDeploymentService deploymentService;
//
//    @Override
//    public void run(String... args) throws Exception {
//        // 示例1: 使用密码认证
//        SshServerConfig passwordConfig = new SshServerConfig(
//                "192.168.1.100",
//                "root",
//                "your-password"
//        );
//        passwordConfig.setPort(22);
//
//        // 示例2: 使用密钥认证
//        SshServerConfig keyConfig = new SshServerConfig(
//                "192.168.1.101",
//                "ubuntu",
//                "/path/to/private/key",
//                null // 无密码的私钥
//        );
//
//        // 执行简单命令
//        CommandResult result = sshService.executeCommand(passwordConfig, "ls -la /etc/nginx/cert");
//        log.info("Command result: " + result.isSuccess());
//        log.info("Output: " + result.getOutput());
//
//        // 上传文件
//        FileUploadResult uploadResult = sshService.uploadFile(
//                passwordConfig,
//                "/local/path/cert.pem",
//                "/etc/nginx/cert",
//                "domain.pem"
//        );
//        log.info("Upload result: " + uploadResult.isSuccess());
//
//        // 上传并执行脚本
//        boolean scriptResult = sshService.uploadAndExecuteScript(
//                passwordConfig,
//                "/local/path/update_cert.sh",
//                "/tmp/scripts",
//                "update_cert.sh",
//                "www.example.com",
//                "/etc/nginx/cert/domain.pem",
//                "/etc/nginx/cert/domain.key"
//        );
//        log.info("Script execution: " + scriptResult);
//    }
//}
